Skip to content

feat(visualizations): Add GitHub Punch Card Heatmap for Enhanced Activity Analysis#8265

Merged
JhaSourav07 merged 2 commits into
JhaSourav07:mainfrom
kanishka-2007-tech:punchcard
Jul 23, 2026
Merged

feat(visualizations): Add GitHub Punch Card Heatmap for Enhanced Activity Analysis#8265
JhaSourav07 merged 2 commits into
JhaSourav07:mainfrom
kanishka-2007-tech:punchcard

Conversation

@kanishka-2007-tech

@kanishka-2007-tech kanishka-2007-tech commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Description

This PR introduces a new Punch Card Heatmap (Circadian Rhythm View) visualization to CommitPulse, allowing developers to analyze when they are most active throughout the week.

Unlike the existing Skyline view, which focuses on daily contribution history, the Punch Card view visualizes commit activity across days of the week and hours of the day, helping users identify their peak coding hours and weekly productivity patterns.

Helps developers understand their coding habits and peak productivity hours.
Complements existing Skyline and Heatmap visualizations with time-based insights.
Provides an engaging and unique way to explore GitHub contribution activity.
Encourages users to analyze and improve their coding routines.

Fixes #8263

Pillar

  • 🎨 Pillar 1 — New Theme Design
  • 📐 Pillar 2 — Geometric SVG Improvement
  • 🕐 Pillar 3 — Timezone Logic Optimization
  • 🛠️ Other (Bug fix, refactoring, docs)

Checklist before requesting a review:

  • I have read the CONTRIBUTING.md file.
  • I have tested these changes locally (localhost:3000/api/streak?user=YOUR_USERNAME).
  • I have run npm run format and npm run lint locally and resolved all errors (CI will fail otherwise).
  • My commits follow the Conventional Commits format (e.g., feat(themes): ..., fix(calculate): ...).
  • I have updated README.md if I added a new theme or URL parameter.
  • I have started the repo.
  • I have made sure that i have only one commit to merge in this PR.
  • The SVG output matches the CommitPulse "premium quality" aesthetic standard (no raw elements, smooth animations, correct fonts).
  • (Recommended) I joined the CommitPulse Discord community for contributor discussions, mentorship, and faster PR support.

@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

@kanishka-2007-tech is attempting to deploy a commit to the jhasourav07's projects Team on Vercel.

A member of the Team first needs to authorize it.

@retenta-bot

retenta-bot Bot commented Jul 22, 2026

Copy link
Copy Markdown

This PR adds a valuable new visualization feature that complements existing tools by providing insights into user activity patterns. It encourages developers to reflect on their coding habits and optimize their routines. Additionally, please note that there have been recent decisions regarding code quality improvements, such as fixing dead code in the calculateStreak function, which may be relevant for maintaining overall code integrity. Looking forward to your thoughts on this enhancement!

@retenta-bot retenta-bot Bot changed the title feat(visualizations): add GitHub Punch Card Heatmap (Circadian Rhythm View) feat(visualizations): Add GitHub Punch Card Heatmap for Enhanced Activity Analysis Jul 22, 2026
@github-actions github-actions Bot added the status:blocked This PR is blocked due to a failing CI check. label Jul 22, 2026
@github-actions github-actions Bot removed the status:blocked This PR is blocked due to a failing CI check. label Jul 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📦 Next.js Bundle Size Report (Gzipped Sizes)

Asset PR Size Base Size Difference Status
static/chunks/130-[hash].js 3.04 KB - +3.04 KB (++100%) 🆕 New
static/chunks/2045-[hash].js - 5.65 KB -5.65 KB (-100.00%) 🗑️ Deleted
static/chunks/2561-[hash].js 10.54 KB - +10.54 KB (++100%) 🆕 New
static/chunks/2705-[hash].js 5.87 KB - +5.87 KB (++100%) 🆕 New
static/chunks/2896-[hash].js - 24.47 KB -24.47 KB (-100.00%) 🗑️ Deleted
static/chunks/4200-[hash].js 10.25 KB - +10.25 KB (++100%) 🆕 New
static/chunks/4305-[hash].js 16.47 KB 16.47 KB +0.00 KB (+0.01%) 🔴 Regression
static/chunks/5547-[hash].js - 2.44 KB -2.44 KB (-100.00%) 🗑️ Deleted
static/chunks/6559-[hash].js - 10.41 KB -10.41 KB (-100.00%) 🗑️ Deleted
static/chunks/8429-[hash].js - 10.12 KB -10.12 KB (-100.00%) 🗑️ Deleted
static/chunks/8607-[hash].js 2.27 KB - +2.27 KB (++100%) 🆕 New
static/chunks/8679-[hash].js 24.64 KB - +24.64 KB (++100%) 🆕 New
static/chunks/9381-[hash].js - 2.90 KB -2.90 KB (-100.00%) 🗑️ Deleted
static/chunks/app/(root)/dashboard/[username]/wrapped/page-[hash].js 2.97 KB 3.12 KB -0.15 KB (-4.76%) 🟢 Improvement
static/chunks/app/page-[hash].js 20.64 KB 21.04 KB -0.39 KB (-1.88%) 🟢 Improvement

📊 Summary of Totals

Category PR Size Base Size Difference
Total JS 3985.34 KB 3984.83 KB +0.51 KB (+0.01%)
Total CSS 331.41 KB 331.41 KB 0 B

@Aamod007 Aamod007 added level:critical High-priority or mission-critical contributions affecting core systems, security, or infrastructure quality:clean PR follows clean coding practices, proper formatting, documentation, and maintainability standards. type:feature New features, additions, or enhancements mentor:Aamod007 labels Jul 23, 2026

@Aamod007 Aamod007 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is an incredible addition to the visualizations! An isometric GitHub punch card provides amazing insights into commit patterns by day and hour. The SVG generation logic in \lib/svg/punchcard.ts\ is particularly well done.

Everything looks solid and the tests are passing. Great work!

Label Justification:

  • \level:critical: Assigned based on 5 files changed across API routing, data fetching, validation, and SVG generation.
  • \quality:clean: Excellent use of caching, concurrency limits, and clean SVG composition.
  • \ ype:feature: Adds a major new visual layout (\punchcard) for users to generate.
  • \mentor:Aamod007: Assigned as required.

@JhaSourav07 JhaSourav07 added the gssoc:approved PR has been reviewed and accepted for valid contribution points label Jul 23, 2026
@JhaSourav07
JhaSourav07 merged commit 33ab6b2 into JhaSourav07:main Jul 23, 2026
9 of 10 checks passed
@github-actions github-actions Bot added this to the GSSoC 2026 milestone Jul 23, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🎉 Congratulations @kanishka-2007-tech! Your PR has been successfully merged. 🚀

Thank you for contributing to CommitPulse. Your work helps us build a better tool for the community.

⚠️ Important for GSSoC Contributors:
You are strictly advised to join our Discord Server as it is mandatory for all GSSoC participants. All important announcements, point claims, and community discussions happen there.

Keep building! 💻✨

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc:approved PR has been reviewed and accepted for valid contribution points level:critical High-priority or mission-critical contributions affecting core systems, security, or infrastructure mentor:Aamod007 quality:clean PR follows clean coding practices, proper formatting, documentation, and maintainability standards. type:feature New features, additions, or enhancements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Add GitHub Punch Card Heatmap (Circadian Rhythm View) for Commit Activity Visualization

3 participants